Service Layer
Multiple load tests were conducted for Service Layer REST APIs with a 4-JVM cluster. The objective of the test was to determine the maximum sustainable throughput while keeping database server health within acceptable limits. The cluster topology consisted of 2 JVMs deployed across two virtual machines, which were load balanced using a virtual load balancer. Throughput was observed to be 100 requests per second when tested with 250 concurrent users. The total test duration was 70 minutes, consisting of a 10-minute ramp-up period followed by a 60-minute steady-state execution window used for performance measurements.
DB Connection Pool Size
|
# |
Data Source Name |
Parameters |
|---|---|---|
|
1 |
SERVICEDATASOURCE |
maxActive = 300 maxIdle = 50 minIdle = 10 initialSize = 20 maxWait = 10000 |
JVM Additional Parameters: -XX:+UseG1GC -Xms4g -Xmx4g
Service.Properties
-
application.configurationCacheTimeout=0.
-
Time to cache businessrules, in minutes, before checking data source for updates.
# For value < 0, never check for updates.
# For value = 0, never check for updates.
# For value > 0, check for updates after specified minutes have passed.
-
-
Application Mode= PRODUCTION
-
jpa.showSql=false
Result
Note: Please note that above mentioned Properties are suggested purely based on Transaction configuration, List of SQLs involved and hardware specifications. And it can vary depending on configuration/Dump size and hardware specifications.
Service Layer on Oracle DB
DB CPU Utilization
Applications CPU Utilization
DB Memory Utilization
Applications Memory Utilization